#include <fcntl.h> // Contains file controls like O_RDWR
#include <errno.h> // Error integer and strerror() function
#include <termios.h> // Contains POSIX terminal control definitions
#include <unistd.h> // write(), read(), close()
#include <stdint.h>
#include <string.h>
#include <stdio.h>

#ifndef __UART_H__
#define __UART_H__

#define UART0 "/dev/ttyS0"
#define TTYS0RXBUFFSIZE 5120

#define UART1 "/dev/ttyS1"
#define TTYS1RXBUFFSIZE 5120

#define UARTUSB "/dev/ttyUSB0"
#define TTYUSBRXBUFFSIZE 5120

#define UART3 "/dev/ttyS3"
#define USBHIDBUFFSIZE 5120

extern int16_t ttyS0FD;
extern int16_t ttyS1FD;
extern struct termios ttyS1;
extern int16_t ttyUSBFD; 
extern struct termios ttyUSB;

extern int16_t USBHIDFD; 
int16_t OpenUart(const char *devStr, int16_t *fd);
int16_t InitUart(int16_t fd, speed_t speed);

#endif